package com.hsteach.web.controller.buildingApply.dto;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.util.Date;

/**
 * 场馆申请
 */
@ApiModel(value = "AddBuildingApplyDto", description = "场馆申请")
@Data
public class AddBuildingApplyDto implements Serializable {

    @ApiModelProperty(value = "场所id", required = true)
    private String buildingId;

    @ApiModelProperty(value = "场所名", required = true)
    private String buildingName;

    @ApiModelProperty(value = "建筑id", required = true)
    private String parentBuildingId;

    @ApiModelProperty(value = "建筑名", required = true)
    private String parentBuildingName;

    @ApiModelProperty(value = "场所用途", required = true)
    private String buildingUse;

    @ApiModelProperty(value = "申请类型，0场馆申请，1会议预约", required = true)
    private Integer applyType;

    @ApiModelProperty(value = "占用模式，0时间模式，1课表模式，-1不占用场所模式", required = true)
    private Integer timeMode;

    @ApiModelProperty(value = "开始时间 yyyy-MM-dd HH:mm:ss", required = true)
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date beginTime;

    @ApiModelProperty(value = "结束时间 yyyy-MM-dd HH:mm:ss", required = true)
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date endTime;

    @ApiModelProperty(value = "用途", required = true)
    private String userTo;

    @ApiModelProperty(value = "重复申请状态，0正常，1重复", required = true)
    private Integer repeatStatus;

    @ApiModelProperty(value = "重复申请周期 DAY每天、WEEK每周、TWO_WEEK每两周、MONTH每月", required = true)
    private String repeatType;

    @ApiModelProperty(value = "重复申请截至日期 yyyy-MM-dd", required = true)
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date repeatEndDate;
}
